Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
@turf/boolean-point-on-line
Advanced tools
@turf/boolean-point-on-line is a module from the Turf.js library that allows you to determine if a given point lies on a line. This can be useful for various geospatial analyses, such as validating routes, checking if a location is on a path, or any other scenario where you need to verify point-line relationships.
Check if a point is on a line
This feature allows you to check if a specific point lies on a given line. In the code sample, the point [2, 2] is checked against a line that passes through [1, 1], [3, 3], and [4, 4]. The result is true because the point lies on the line.
const turf = require('@turf/turf');
const point = turf.point([2, 2]);
const line = turf.lineString([[1, 1], [3, 3], [4, 4]]);
const isPointOnLine = turf.booleanPointOnLine(point, line);
console.log(isPointOnLine); // true
Check if a point is on a line with a tolerance
This feature allows you to check if a point is on a line within a specified tolerance. In the code sample, the point [2, 2.1] is checked against the same line with a tolerance of 0.2. The result is true because the point is within the tolerance range of the line.
const turf = require('@turf/turf');
const point = turf.point([2, 2.1]);
const line = turf.lineString([[1, 1], [3, 3], [4, 4]]);
const isPointOnLine = turf.booleanPointOnLine(point, line, { tolerance: 0.2 });
console.log(isPointOnLine); // true
The 'point-in-polygon' package allows you to check if a point is inside a polygon. While it doesn't check for points on lines, it is useful for similar geospatial analyses where you need to determine point-in-shape relationships.
The 'geolib' package provides a variety of geospatial functions, including checking if a point is on a line. It offers more general-purpose geospatial utilities compared to @turf/boolean-point-on-line, which is more specialized.
Leaflet is a popular library for interactive maps. While it is primarily used for rendering maps, it also provides some geospatial analysis functions, including checking if a point is on a line. It is more comprehensive in terms of mapping capabilities compared to @turf/boolean-point-on-line.
Returns true if a point is on a line. Accepts a optional parameter to ignore the start and end vertices of the linestring.
Parameters
pt
Coord GeoJSON Pointline
Feature<LineString> GeoJSON LineStringoptions
Object Optional parameters (optional, default {}
)
options.ignoreEndVertices
boolean whether to ignore the start and end vertices. (optional, default false
)Examples
var pt = turf.point([0, 0]);
var line = turf.lineString([[-1, -1],[1, 1],[1.5, 2.2]]);
var isPointOnLine = turf.booleanPointOnLine(pt, line);
//=true
Returns boolean true/false
This module is part of the Turfjs project, an open source module collection dedicated to geographic algorithms. It is maintained in the Turfjs/turf repository, where you can create PRs and issues.
Install this module individually:
$ npm install @turf/boolean-point-on-line
Or install the Turf module that includes it as a function:
$ npm install @turf/turf
FAQs
turf boolean-point-on-line module
The npm package @turf/boolean-point-on-line receives a total of 0 weekly downloads. As such, @turf/boolean-point-on-line popularity was classified as not popular.
We found that @turf/boolean-point-on-line demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 9 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.